{"version":3,"file":"static/chunks/pages/media/news-releases/release/[slug]-f8e73873291395a2.js","mappings":"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","sources":["webpack://_N_E/./pages/media/news-releases/release/[slug].js","webpack://_N_E/./utils/searchNewsReleases.js","webpack://_N_E/?3e46"],"sourcesContent":["import { useRouter } from 'next/router';\nimport React, { useEffect, useState } from 'react';\n\nimport Error from '@/pages/_error';\nimport CMSPage from '@/src/cms/components/CMSPage';\nimport request from '@/utils/axios';\nimport searchNewsReleases, { getNewReleaseId } from '@/utils/searchNewsReleases';\n\nconst NewsRelease = props => {\n const router = useRouter();\n const { releaseData } = props;\n const [pageData, setPageData] = useState(null);\n const [error, setError] = useState(false);\n const [loading, setLoading] = useState(false);\n\n const { query, asPath } = router;\n const _sitepageid = query.slug || getNewReleaseId(asPath);\n\n useEffect(() => {\n if (!_sitepageid) return;\n (async function mounted() {\n try {\n setLoading(true);\n const response = await request({\n url: `cms/newsrelease`,\n params: {\n sitePageId: _sitepageid,\n },\n });\n const { data } = response;\n if (data.Success === 'false' || data.AvailableToWeb === 'N') {\n setError(true);\n } else if (!releaseData || data.DateLastUpdated !== releaseData.DateLastUpdated) {\n setPageData(data);\n }\n setLoading(false);\n } catch (err) {\n setError(true);\n setLoading(false);\n }\n })();\n }, [_sitepageid]);\n\n if (error) {\n return ;\n }\n\n return (\n \n );\n};\n\nexport async function getStaticPaths() {\n const response = await searchNewsReleases();\n const { results } = response;\n return {\n paths: results.map(r => ({ params: { slug: r.SitePageId.toString() } })),\n fallback: false,\n };\n}\n\nexport async function getStaticProps({ params }) {\n try {\n const sitePageId = params.slug;\n if (!sitePageId) {\n return {\n props: {\n releaseData: null,\n },\n };\n }\n const response = await request({\n url: `cms/newsrelease`,\n params: {\n sitePageId,\n },\n });\n const { data } = response;\n if (data.AvailableToWeb === 'N') {\n return {\n props: {\n releaseData: null,\n },\n };\n }\n return {\n props: {\n releaseData: data.Success === 'false' ? null : data,\n },\n };\n } catch (e) {\n return {\n props: {\n releaseData: null,\n },\n };\n }\n}\n\nexport default NewsRelease;\n","import request from './axios';\nimport { DATE_RANGES_OPTION } from './dateTimeHelpers';\n\n/**\n * @typedef {object} Result\n * @property {number} SitePageId\n * @property {number} Cat1Id\n * @property {string} PageTitle\n * @property {string} DateModified - M/D/YYYY LTS\n * @property {?number} PublicationMasterCode\n * @property {string} PublicationMaster\n * @property {string} PublishDate - M/D/YYYY LTS\n * @property {string} State\n * @property {string} Subject\n * @property {string} MeetingStartDate - M/D/YYYY LTS\n * @property {string} MeetingEndDate - M/D/YYYY LTS\n * @property {?number} MeetingLocationId\n * @property {string} MeetingLocation\n * @property {string} ExecutiveSummary\n * @property {?number} IconId\n * @property {string} Icon\n */\n\n/**\n * Request for content page with ported query params from old urls.\n * Use single = true for one result, otherwise an array or results is returned.\n *\n * @param {object} options - see typedef\n * @param {number|string} options.pubCode -\n * @param {number|string} options.stateCode -\n * @param {number|string} options.statecode -\n * @param {number|string} options.yearsBack -\n * @param {number|string} options.meetingTypeId -\n * @param {string} options.sortField - viable values: [pagetitle, owner, and status]. Otherwise ignored.\n * @param {boolean} [options.single=true] -\n * @param {number|string} [cat1Id=null] - Publications -> 9996, Meetings -> 9997, News Releases -> 9998\n * @returns {Result|Array} - Result(s) -- See typedef\n */\nexport default async function searchNewsReleases(options = {}, axiosConfig = {}) {\n const body = generatePostData({\n ...options,\n cat1Id: 9998,\n });\n\n try {\n const searchResponse = await request({\n url: `cms/newsreleasessearch`,\n method: 'POST',\n data: body,\n cache: false,\n cacheTime: 15,\n ...axiosConfig,\n });\n const { Results } = searchResponse?.data ?? {};\n\n return {\n results: (Results ?? []).filter(result => result.SitePageId !== 0),\n };\n } catch (error) {\n console.log(error)\n throw new Error(\n `News Release Search Error.`, error\n );\n }\n}\n\nexport function generatePostData(options) {\n const {\n pubCode, // PublicationCode in Publications\n stateCode, // StateCode in States\n statecode, // StateCode in States coming from dynamic route segment prop\n yearsBack, // DayRangeCode (number of days to go back; e.g. for 5 years it would be 1825) in the DayRanges array (only one value will be expected)\n meetingTypeId, // MeetingVenueId (4 for conference, 5 for meeting, 6 for webinar) in MeetingVenues\n sortField, // pagetitle, owner, and status (otherwise it defaults to publish date)\n cat1Id = null,\n date = null,\n includeOnHomePage = null,\n dateStart = null,\n dateEnd = null,\n } = options;\n\n const _statecode = stateCode !== undefined ? stateCode : statecode;\n\n return JSON.stringify({\n SearchId: null,\n PersonId: null,\n SearchDescription: null,\n FieldOptions: {\n SearchText: '',\n Page: null,\n PageSize: null,\n SortOrder: null,\n LinesOfBusiness: [],\n Subjects: [],\n Publications: pubCode !== undefined ? [{ PublicationCode: pubCode }] : [],\n States: _statecode ? [{ StateCode: _statecode }] : [],\n DayRanges: yearsBack !== undefined ? [{ DayRangeCode: Number(yearsBack) * 365 }] : [],\n MeetingTypes: meetingTypeId ? [{ MeetingTypeId: meetingTypeId }] : [],\n SortField:\n sortField && ['pagetitle', 'owner', 'status', 'state'].includes(sortField)\n ? sortField\n : 'PublishDate',\n PostingTypes: [{Cat1Id: cat1Id}],\n IncludeOnHomePage: includeOnHomePage,\n ...(date && {\n DateStart: dateStart,\n DateEnd: dateEnd,\n DateRanges: DATE_RANGES_OPTION,\n }),\n Statuses: [{ StatusCode: 'C' }],\n },\n });\n}\n\nexport const getNewReleaseId = (asPath = '') => {\n const parts = asPath.split('release/');\n if (parts.length > 1) {\n return parts[1].split('/')[0];\n }\n return null;\n};\n","\n (window.__NEXT_P = window.__NEXT_P || []).push([\n \"/media/news-releases/release/[slug]\",\n function () {\n return require(\"private-next-pages/media/news-releases/release/[slug].js\");\n }\n ]);\n if(module.hot) {\n module.hot.dispose(function () {\n window.__NEXT_P.push([\"/media/news-releases/release/[slug]\"])\n });\n }\n "],"names":["props","router","useRouter","releaseData","useState","pageData","setPageData","error","setError","loading","setLoading","query","asPath","_sitepageid","slug","getNewReleaseId","useEffect","request","url","params","sitePageId","response","data","Success","AvailableToWeb","DateLastUpdated","status","type","path","searchNewsReleases","options","axiosConfig","body","generatePostData","cat1Id","method","cache","cacheTime","searchResponse","Results","results","filter","result","SitePageId","console","log","Error","pubCode","stateCode","statecode","yearsBack","meetingTypeId","sortField","date","includeOnHomePage","dateStart","dateEnd","_statecode","undefined","JSON","stringify","SearchId","PersonId","SearchDescription","FieldOptions","SearchText","Page","PageSize","SortOrder","LinesOfBusiness","Subjects","Publications","PublicationCode","States","StateCode","DayRanges","DayRangeCode","Number","MeetingTypes","MeetingTypeId","SortField","includes","PostingTypes","Cat1Id","IncludeOnHomePage","DateStart","DateEnd","DateRanges","DATE_RANGES_OPTION","Statuses","StatusCode","parts","split","length","window","__NEXT_P","push"],"sourceRoot":""}